from .base_item import Item
class DragonRing(Item):
    
    def __init__(self):
        super().__init__(
            name="Dragon Ring",
            description="A ring imbued with dragon magic",
            rarity="legendary"
        )
        self._attack_bonus = 15
        self._defense_bonus = 10
        self._mana_bonus = 25
        self._health_bonus = 20
    
    def get_item_type(self) -> str:
        return "accessory"
    
    def get_special_ability(self) -> str:
        return "Dragon's Blessing: All abilities cost 20% less mana"
class TigerAmulet(Item):
    
    def __init__(self):
        super().__init__(
            name="Tiger Amulet",
            description="An amulet containing a tiger spirit",
            rarity="epic"
        )
        self._attack_bonus = 12
        self._speed_bonus = 15
        self._health_bonus = 25
    
    def get_item_type(self) -> str:
        return "accessory"
    
    def get_special_ability(self) -> str:
        return "Tiger's Spirit: +25% movement speed and attack speed"
class PhoenixNecklace(Item):
    
    def __init__(self):
        super().__init__(
            name="Phoenix Necklace",
            description="A necklace blessed by phoenix fire",
            rarity="epic"
        )
        self._mana_bonus = 30
        self._health_bonus = 15
        self._defense_bonus = 8
    
    def get_item_type(self) -> str:
        return "accessory"
    
    def get_special_ability(self) -> str:
        return "Phoenix's Grace: Regenerate 5 mana per turn"
class ThunderBracelet(Item):
    
    def __init__(self):
        super().__init__(
            name="Thunder Bracelet",
            description="A bracelet crackling with thunder energy",
            rarity="rare"
        )
        self._attack_bonus = 10
        self._mana_bonus = 20
        self._speed_bonus = 8
    
    def get_item_type(self) -> str:
        return "accessory"
    
    def get_special_ability(self) -> str:
        return "Thunder's Power: 15% chance to chain lightning to nearby enemies"


class IceCharm(Item):
    def __init__(self):
        super().__init__(
            name="Ice Charm",
            description="A charm made from eternal ice",
            rarity="uncommon"
        )
        self._defense_bonus = 8
        self._mana_bonus = 15
        self._health_bonus = 10
    
    def get_item_type(self) -> str:
        return "accessory"
    
    def get_special_ability(self) -> str:
        return "Ice's Embrace: 20% chance to slow all enemies at start of battle"


class WindTalisman(Item):
    
    def __init__(self):
        super().__init__(
            name="Wind Talisman",
            description="A talisman blessed by wind spirits",
            rarity="rare"
        )
        self._speed_bonus = 20
        self._attack_bonus = 8
        self._mana_bonus = 12
    
    def get_item_type(self) -> str:
        return "accessory"
    
    def get_special_ability(self) -> str:
        return "Wind's Swiftness: +30% evasion chance"